home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / ctutor.exe / SOURCE / BIGDYNL.C < prev    next >
C/C++ Source or Header  |  1994-05-15  |  2KB  |  61 lines

  1.                              /* Chapter 12 - Program 2 - BIGDYNL.C */
  2. #include "stdio.h"
  3. #include "string.h"
  4. #include "stdlib.h"
  5.  
  6. struct animal {
  7.    char name[25];
  8.    char breed[25];
  9.    int  age;
  10. } *pet[12], *point;   /* this defines 13 pointers, no variables    */
  11.  
  12. void main()
  13. {
  14. int index;
  15.  
  16.       /* first, fill the dynamic structures with nonsense          */
  17.    for (index = 0 ; index < 12 ; index++) {
  18.       pet[index] = (struct animal *)malloc(sizeof(struct animal));
  19.       strcpy(pet[index]->name, "General");
  20.       strcpy(pet[index]->breed, "Mixed Breed");
  21.       pet[index]->age = 4;
  22.    }
  23.  
  24.    pet[4]->age = 12;           /* these lines are simply to        */
  25.    pet[5]->age = 15;           /*      put some nonsense data into */
  26.    pet[6]->age = 10;           /*            a few of the fields.  */
  27.  
  28.        /* now print out the data described above                   */
  29.  
  30.    for (index = 0 ; index < 12 ; index++) {
  31.       point = pet[index];
  32.       printf("%s is a %s, and is %d years old.\n", 
  33.                               point->name, point->breed, point->age);
  34.    }
  35.  
  36.        /* good programming practice dictates that we free up the   */
  37.        /* dynamically allocated space before we quit.              */
  38.  
  39.    for (index = 0 ; index < 12 ; index++)
  40.       free(pet[index]);
  41. }
  42.  
  43.  
  44.  
  45. /* Result of execution
  46.  
  47. General is a Mixed Breed, and is 4 years old.
  48. General is a Mixed Breed, and is 4 years old.
  49. General is a Mixed Breed, and is 4 years old.
  50. General is a Mixed Breed, and is 4 years old.
  51. General is a Mixed Breed, and is 12 years old.
  52. General is a Mixed Breed, and is 15 years old.
  53. General is a Mixed Breed, and is 10 years old.
  54. General is a Mixed Breed, and is 4 years old.
  55. General is a Mixed Breed, and is 4 years old.
  56. General is a Mixed Breed, and is 4 years old.
  57. General is a Mixed Breed, and is 4 years old.
  58. General is a Mixed Breed, and is 4 years old.
  59.  
  60. */
  61.